package com.buss.product.service;

import com.buss.core.persistence.OrderBy;
import com.buss.core.persistence.Paginalbe;
import com.buss.core.persistence.ResultList;
import com.buss.product.model.Brand;

public interface BrandService {
	/**
	 * 保存品牌信息
	 * @param brand
	 */
	public Brand saveBrand(Brand brand);
	
	/**
	 * 修改品牌信息
	 * @param brand
	 */
	public void editBrand(Brand brand);
	
	/**
	 * 删除指定品牌
	 * @param id
	 */
	public void removeBrand(Long[] ids);
	
	/**
	 * 获取指定的品牌信息
	 * @param id
	 */
	public Brand loadBrand(Long id);
	
	/**
	 * 获取品牌信息列表
	 * @param companyId 单位编码(不能为空)
	 * @param name	品牌名称
	 * @param categoryId	商品分类编码
	 * @param orderBy	排序
	 * @param page	分页
	 * @return
	 */
	public ResultList<Brand> queryBrand(String companyId,String branchId,String name,String pinyin,Long categoryId,OrderBy orderBy,Paginalbe page);
	
	/**
	 * 根据商品分类编码获取对应的品牌信息
	 * @param categoryId
	 * @return
	 */
	public ResultList<Brand> queryBrand(Long categoryId);
	
	/**
	 * 获取指定分类编码没有关联的品牌信息
	 * @param categoryId
	 * @return
	 */
	public ResultList<Brand> queryBrandNotInCategoryId(Long categoryId);
}
